{# Overseer's home as a map (overseer_map.layout, ``?view=map``): each process a node at its place in its tier, linking to its page, with its state and its containers' CPU and memory; the connections between them as lines (in the tone of what each leads to, dashed for queued work, dotted for a key Secrets holds); data in its shape (a store, the queue, object storage: a glyph here, the outline opened up); what runs in the webserver as chips in the Server's node, two to a row, each with its cost to load (load_cost). Rendered in the page and again for each frame. #} {% from "components/macros/layout.html" import health_badge, status_dot %} {% from "components/macros/icons.html" import icon %} {% from "pages/overseer/_glance_macros.html" import cause, figures %} {# A node's name, linking to its page; plain for what has none (outside). #} {% macro node_title(node, size="") -%} {% if node.url %}{{ node.title }} {%- else %}{{ node.title }}{% endif %} {%- endmacro %} {% if map_zoom %} {# Zoomed into the Server (overseer_container._opened): the way back out. #} {% endif %}
{% for node in map_nodes %} {% if map_compact %} {# One line: its dot, its name, its cost to load; data in its outline (the stroke takes the tone, as a border does), an outside provider a dashed pill. What it says, why it fails and the fix (a key's set dialog), under it on hover (CSS, so a live frame cannot close it; padded, not spaced, so the pointer can move into it). #} {% set outside = node.role == map_roles.OUTSIDE %} {% set shaped = node.role and not outside %} {% set outline = "" if shaped else ("rounded-full justify-center border border-dashed bg-aegis-card" if outside else "rounded-lg border bg-aegis-card") %}
{% if shaped %}{% endif %} {% if node.status %}{{ status_dot(node.status) }}{% endif %} {{ node_title(node) }} {% if node.load %}{{ node.load }}{% endif %} {% if node.figure %}{{ node.figure }}{% endif %}
{% else %}
{% if node.role %}{{ icon(node.role, "w-4 h-4 shrink-0 text-aegis-muted") }}{% endif %} {{ node_title(node, "text-base") }} {% if node.zoom %}{{ icon("tiers", "w-4 h-4") }}Open up {{ node.title }}{% endif %} {% if node.status %}{{ health_badge(node.status) }}{% endif %}
{{ cause(node) }} {% if node.glance %} {% for row in node.glance.rows[:2] %}
{{ figures(row) }}
{% endfor %} {% else %}

{{ node.message|message }}

{% endif %} {% if node.note %}

{{ node.note }}

{% endif %} {% if node.hosted %} {% endif %}
{% endif %} {% endfor %}